﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Veracruz
{
  /// <summary>
  /// A character is a fictive persona a player incarnates to play to the game 
  /// </summary>
  /// <remarks>A player can only have one character, but htis character can have multiple Identities</remarks>
  interface ICharacter
  {
    /// <summary>
    /// The collection of Identy a character has.
    /// Usualy a normal one got only his native identity but sometime people such as spy, burglar or sailor used to
    /// have more than one.
    /// </summary>
    IList<IIdentity> Identities { get; }

    /// <summary>
    /// The character moral split among 4 categories
    /// </summary>
    IMoral IMoral
    {
      get;
      set;
    }

    /// <summary>
    /// The metrics which describes the character skills
    /// </summary>
    ITechnicalSheet Sheet
    {
      get;
      set;
    }

    /// <summary>
    /// The list of major event which concerns the Character
    /// </summary>
    IList<IHistoricalFact> MajorFacts { get; }
   
  }
}
